<!DOCTYPE html>
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<meta name="generator" content="ApiGen 2.8.0" />
	<meta name="robots" content="noindex" />

	<title>File Particle/Database.php | Particle</title>

	<script type="text/javascript" src="resources/combined.js?3415740931"></script>
	<script type="text/javascript" src="elementlist.js?2659508522"></script>
	<link rel="stylesheet" type="text/css" media="all" href="resources/style.css?3505392360" />

</head>

<body>
<div id="left">
	<div id="menu">
		<a href="index.html" title="Overview"><span>Overview</span></a>


		<div id="groups">
			<h3>Namespaces</h3>
			<ul>
				<li class="active"><a href="namespace-Particle.html">Particle<span></span></a>
						<ul>
				<li><a href="namespace-Particle.Addons.html">Addons</a>
						</li>
				<li><a href="namespace-Particle.Apps.html">Apps</a>
						</li>
				<li class="active"><a href="namespace-Particle.Core.html">Core</a>
						</li>
							</ul></li>
			</ul>
		</div>

		<hr />


		<div id="elements">
			<h3>Classes</h3>
			<ul>
				<li><a href="class-Particle.Core.Addons.html">Addons</a></li>
				<li><a href="class-Particle.Core.App.html">App</a></li>
				<li><a href="class-Particle.Core.Bootstrap.html">Bootstrap</a></li>
				<li><a href="class-Particle.Core.Controller.html">Controller</a></li>
				<li class="active"><a href="class-Particle.Core.Database.html">Database</a></li>
				<li><a href="class-Particle.Core.Debug.html">Debug</a></li>
				<li><a href="class-Particle.Core.Model.html">Model</a></li>
				<li><a href="class-Particle.Core.Request.html">Request</a></li>
				<li><a href="class-Particle.Core.Security.html">Security</a></li>
				<li><a href="class-Particle.Core.Session.html">Session</a></li>
				<li><a href="class-Particle.Core.View.html">View</a></li>
				<li><a href="class-Particle.Core.ViewAddons.html">ViewAddons</a></li>
			</ul>





		</div>
	</div>
</div>

<div id="splitter"></div>

<div id="right">
<div id="rightInner">
	<form id="search">
		<input type="hidden" name="cx" value="" />
		<input type="hidden" name="ie" value="UTF-8" />
		<input type="text" name="q" class="text" />
		<input type="submit" value="Search" />
	</form>

	<div id="navigation">
		<ul>
			<li>
				<a href="index.html" title="Overview"><span>Overview</span></a>
			</li>
			<li>
				<a href="namespace-Particle.Core.html" title="Summary of Particle\Core"><span>Namespace</span></a>
			</li>
			<li>
				<a href="class-Particle.Core.Database.html" title="Summary of Particle\Core\Database"><span>Class</span></a>
			</li>
		</ul>
		<ul>
			<li>
				<a href="tree.html" title="Tree view of classes, interfaces, traits and exceptions"><span>Tree</span></a>
			</li>
			<li>
				<a href="deprecated.html" title="List of deprecated elements"><span>Deprecated</span></a>
			</li>
			<li>
				<a href="todo.html" title="Todo list"><span>Todo</span></a>
			</li>
		</ul>
		<ul>
		</ul>
	</div>

<pre><code><span id="1" class="l"><a class="l" href="#1"> 1: </a><span class="xlang">&lt;?php</span>
</span><span id="2" class="l"><a class="l" href="#2"> 2: </a><span class="php-keyword1">namespace</span> Particle\Core;
</span><span id="3" class="l"><a class="l" href="#3"> 3: </a><span class="php-keyword1">use</span> Particle\Core <span class="php-keyword1">as</span> Core;
</span><span id="4" class="l"><a class="l" href="#4"> 4: </a><span class="php-comment">/**
</span></span><span id="5" class="l"><a class="l" href="#5"> 5: </a><span class="php-comment"> * @package Particle
</span></span><span id="6" class="l"><a class="l" href="#6"> 6: </a><span class="php-comment"> * @category Core
</span></span><span id="7" class="l"><a class="l" href="#7"> 7: </a><span class="php-comment"> * @author dertin
</span></span><span id="8" class="l"><a class="l" href="#8"> 8: </a><span class="php-comment"> **/</span>
</span><span id="9" class="l"><a class="l" href="#9"> 9: </a>
</span><span id="10" class="l"><a class="l" href="#10">10: </a><span class="php-keyword1">final</span> <span class="php-keyword1">class</span> <a id="Database" href="#Database">Database</a> {
</span><span id="11" class="l"><a class="l" href="#11">11: </a>
</span><span id="12" class="l"><a class="l" href="#12">12: </a>    <span class="php-keyword1">static</span> <span class="php-keyword1">private</span> <span class="php-var"><a id="$_PDOInstance" href="#$_PDOInstance">$_PDOInstance</a></span> = <span class="php-keyword1">null</span>;
</span><span id="13" class="l"><a class="l" href="#13">13: </a>    <span class="php-keyword1">static</span> <span class="php-keyword1">private</span> <span class="php-var"><a id="$_PDOConnect" href="#$_PDOConnect">$_PDOConnect</a></span> = <span class="php-keyword1">null</span>;
</span><span id="14" class="l"><a class="l" href="#14">14: </a>   
</span><span id="15" class="l"><a class="l" href="#15">15: </a>    <span class="php-keyword1">public</span> <span class="php-keyword1">function</span> <a id="_connectDBPDODefault" href="#_connectDBPDODefault">connectDBPDODefault</a>(){
</span><span id="16" class="l"><a class="l" href="#16">16: </a>       
</span><span id="17" class="l"><a class="l" href="#17">17: </a>       <span class="php-var">$PDOConnectNew</span> = DB_HOST.DB_NAME.DB_USER.DB_PASS.DB_CHAR;
</span><span id="18" class="l"><a class="l" href="#18">18: </a>       
</span><span id="19" class="l"><a class="l" href="#19">19: </a>       <span class="php-keyword1">if</span>(self::<span class="php-var">$_PDOConnect</span> != <span class="php-var">$PDOConnectNew</span>){
</span><span id="20" class="l"><a class="l" href="#20">20: </a>           
</span><span id="21" class="l"><a class="l" href="#21">21: </a>           <span class="php-keyword1">return</span> self::_connectDBPDO();
</span><span id="22" class="l"><a class="l" href="#22">22: </a>           
</span><span id="23" class="l"><a class="l" href="#23">23: </a>       }<span class="php-keyword1">else</span>{
</span><span id="24" class="l"><a class="l" href="#24">24: </a>           <span class="php-keyword1">return</span> self::<span class="php-var">$_PDOInstance</span>;
</span><span id="25" class="l"><a class="l" href="#25">25: </a>       }
</span><span id="26" class="l"><a class="l" href="#26">26: </a>
</span><span id="27" class="l"><a class="l" href="#27">27: </a>    }
</span><span id="28" class="l"><a class="l" href="#28">28: </a>
</span><span id="29" class="l"><a class="l" href="#29">29: </a>    <span class="php-keyword1">public</span> <span class="php-keyword1">function</span> <a id="_connectDBPDONew" href="#_connectDBPDONew">connectDBPDONew</a>(<span class="php-var">$dbHost</span>, <span class="php-var">$dbName</span>, <span class="php-var">$dbUser</span>, <span class="php-var">$dbPass</span>, <span class="php-var">$dbChar</span>){
</span><span id="30" class="l"><a class="l" href="#30">30: </a>        
</span><span id="31" class="l"><a class="l" href="#31">31: </a>       <span class="php-var">$PDOConnectNew</span> = <span class="php-var">$dbHost</span>.<span class="php-var">$dbName</span>.<span class="php-var">$dbUser</span>.<span class="php-var">$dbPass</span>.<span class="php-var">$dbChar</span>;
</span><span id="32" class="l"><a class="l" href="#32">32: </a>       
</span><span id="33" class="l"><a class="l" href="#33">33: </a>       <span class="php-keyword1">if</span>(self::<span class="php-var">$_PDOConnect</span> != <span class="php-var">$PDOConnectNew</span>){
</span><span id="34" class="l"><a class="l" href="#34">34: </a>                      
</span><span id="35" class="l"><a class="l" href="#35">35: </a>           <span class="php-keyword1">return</span> self::_connectDBPDO(<span class="php-var">$dbHost</span>, <span class="php-var">$dbName</span>, <span class="php-var">$dbUser</span>, <span class="php-var">$dbPass</span>, <span class="php-var">$dbChar</span>);
</span><span id="36" class="l"><a class="l" href="#36">36: </a>                  
</span><span id="37" class="l"><a class="l" href="#37">37: </a>       }<span class="php-keyword1">else</span>{
</span><span id="38" class="l"><a class="l" href="#38">38: </a>           <span class="php-keyword1">return</span> self::<span class="php-var">$_PDOInstance</span>;
</span><span id="39" class="l"><a class="l" href="#39">39: </a>       }
</span><span id="40" class="l"><a class="l" href="#40">40: </a>       
</span><span id="41" class="l"><a class="l" href="#41">41: </a>    }
</span><span id="42" class="l"><a class="l" href="#42">42: </a>    
</span><span id="43" class="l"><a class="l" href="#43">43: </a>    <span class="php-keyword1">private</span> <span class="php-keyword1">function</span> <a id="__connectDBPDO" href="#__connectDBPDO">_connectDBPDO</a>(<span class="php-var">$dbHost</span> = DB_HOST, <span class="php-var">$dbName</span> = DB_NAME, <span class="php-var">$dbUser</span> = DB_USER, <span class="php-var">$dbPass</span> = DB_PASS, <span class="php-var">$dbChar</span> = DB_CHAR) {
</span><span id="44" class="l"><a class="l" href="#44">44: </a>       
</span><span id="45" class="l"><a class="l" href="#45">45: </a>        <span class="php-keyword1">try</span> {
</span><span id="46" class="l"><a class="l" href="#46">46: </a>            
</span><span id="47" class="l"><a class="l" href="#47">47: </a>            self::<span class="php-var">$_PDOInstance</span> = <span class="php-keyword1">null</span>;
</span><span id="48" class="l"><a class="l" href="#48">48: </a>
</span><span id="49" class="l"><a class="l" href="#49">49: </a>            <span class="php-var">$dsn</span> = DB_TYPE. <span class="php-quote">':host='</span> . <span class="php-var">$dbHost</span> . <span class="php-quote">';dbname='</span> . <span class="php-var">$dbName</span>;
</span><span id="50" class="l"><a class="l" href="#50">50: </a>            
</span><span id="51" class="l"><a class="l" href="#51">51: </a>            <span class="php-var">$driver_options</span> = <span class="php-keyword1">array</span>(\PDO::MYSQL_ATTR_INIT_COMMAND =&gt; <span class="php-quote">'SET NAMES '</span> . <span class="php-var">$dbChar</span>);
</span><span id="52" class="l"><a class="l" href="#52">52: </a>
</span><span id="53" class="l"><a class="l" href="#53">53: </a>            self::<span class="php-var">$_PDOInstance</span> = <span class="php-keyword1">new</span> \PDO(<span class="php-var">$dsn</span>, <span class="php-var">$dbUser</span>, <span class="php-var">$dbPass</span>, <span class="php-var">$driver_options</span>);
</span><span id="54" class="l"><a class="l" href="#54">54: </a>
</span><span id="55" class="l"><a class="l" href="#55">55: </a>            self::<span class="php-var">$_PDOConnect</span> = <span class="php-var">$dbHost</span>.<span class="php-var">$dbName</span>.<span class="php-var">$dbUser</span>.<span class="php-var">$dbPass</span>.<span class="php-var">$dbChar</span>;;
</span><span id="56" class="l"><a class="l" href="#56">56: </a>
</span><span id="57" class="l"><a class="l" href="#57">57: </a>
</span><span id="58" class="l"><a class="l" href="#58">58: </a>        } <span class="php-keyword1">catch</span> (\PDOException <span class="php-var">$e</span>) {
</span><span id="59" class="l"><a class="l" href="#59">59: </a>            <span class="php-var">$rest</span> = Core\Addons::loadAddon(<span class="php-quote">'errorControl'</span>);
</span><span id="60" class="l"><a class="l" href="#60">60: </a>            <span class="php-comment">//echo '&lt;pre&gt;';</span>
</span><span id="61" class="l"><a class="l" href="#61">61: </a>            <span class="php-var">$rest</span>-&gt;message(<span class="php-quote">'9090'</span>);
</span><span id="62" class="l"><a class="l" href="#62">62: </a>            <span class="php-comment">//echo '&lt;/pre&gt;';</span>
</span><span id="63" class="l"><a class="l" href="#63">63: </a>            <span class="php-comment">//die(&quot;PDO CONNECTION ERROR: &quot; . $e-&gt;getMessage() . &quot;&lt;br/&gt;&quot;);</span>
</span><span id="64" class="l"><a class="l" href="#64">64: </a>        }
</span><span id="65" class="l"><a class="l" href="#65">65: </a>        
</span><span id="66" class="l"><a class="l" href="#66">66: </a>        <span class="php-keyword1">return</span> self::<span class="php-var">$_PDOInstance</span>;
</span><span id="67" class="l"><a class="l" href="#67">67: </a>    }
</span><span id="68" class="l"><a class="l" href="#68">68: </a>    
</span><span id="69" class="l"><a class="l" href="#69">69: </a>    <span class="php-keyword1">public</span> <span class="php-keyword1">function</span> <a id="_closeDBPDO" href="#_closeDBPDO">closeDBPDO</a>() {
</span><span id="70" class="l"><a class="l" href="#70">70: </a>        self::<span class="php-var">$_PDOInstance</span> = <span class="php-keyword1">null</span>;
</span><span id="71" class="l"><a class="l" href="#71">71: </a>        self::<span class="php-var">$_PDOConnect</span> = <span class="php-keyword1">null</span>;
</span><span id="72" class="l"><a class="l" href="#72">72: </a>        <span class="php-keyword1">return</span> <span class="php-keyword1">null</span>;
</span><span id="73" class="l"><a class="l" href="#73">73: </a>    }
</span><span id="74" class="l"><a class="l" href="#74">74: </a>    
</span><span id="75" class="l"><a class="l" href="#75">75: </a></span>}</code></pre>

	<div id="footer">
		Particle API documentation generated by <a href="http://apigen.org">ApiGen 2.8.0</a>
	</div>
</div>
</div>
</body>
</html>
